package v1

import "time"

// Config melody configuration struct.
type Config struct {
	WriteWait         time.Duration // Milliseconds until write times out.
	PongWait          time.Duration // Timeout for waiting on pong.
	PingPeriod        time.Duration // Milliseconds between pings.
	MaxMessageSize    int64         // Maximum size in bytes of a message.
	MessageBufferSize int           // The max amount of messages that can be in a sessions buffer before it starts dropping them.
}

// DefaultConfig default melody configuration
var DefaultConfig = Config{
	WriteWait:         10 * time.Second,
	PongWait:          60 * time.Second,
	PingPeriod:        (60 * time.Second * 9) / 10,
	MaxMessageSize:    1024 * 512,
	MessageBufferSize: 4096,
}
